package com.sojson.service.pay.ali;

import com.sojson.util.pay.ali.bean.AliResponse;

/**
 * 支付宝支付回调Service
 * 
 * @author liu
 * @date 2021-03-24
 */
public interface NotifyPayAliService {

    /**
     * 支付回调(商城)
     * 
     * @param result
     * @return
     * @throws Exception 
     */
    boolean goods(AliResponse result) throws Exception;

    /**
     * 支付回调(续租)
     * 
     * @param result
     * @return
     */
    boolean notifyPayGoOn(AliResponse result);

    /**
     * 退款回调(商城)
     * 
     * @return
     * @throws Exception 
     */
    boolean goodsCancel(AliResponse paramResult) throws Exception;

    /**
     * 退款回调(续签)
     * 
     * @return
     */
    boolean notifyPayCancelGoOn(AliResponse paramResult);

    /**
     * 主动退款回调
     * 
     * @return
     */
    boolean notifyPayCancelInitiative(AliResponse result);

    /**
     * 子订单主动退款回调
     * 
     * @return
     */
    boolean notifyPayCancelGoOnInitiative(AliResponse result);

    /**
     * 支付回调(诚意金)
     * 
     * @param paramResult
     * @return
     */
    boolean deposit(AliResponse paramResult);

    /**
     * 退款回调(诚意金)
     * 
     * @return
     * @throws Exception 
     */
    boolean depositCancel(AliResponse paramResult) throws Exception;

}